package org.example.demo1.DAO;

import org.example.demo1.Entity.Role;
import java.util.List;
import java.util.Map;

public interface RoleDao {
    // 获取所有角色
    List<Role> getAllRoles();
    
    // 根据ID获取角色
    Role getRoleById(int role_id);
    
    // 插入新角色
    int insertRole(Role role);
    
    // 更新角色信息
    int updateRole(Role role);
    
    // 删除角色
    int deleteRole(int roleId);
    
    // 新增：根据角色ID获取所有权限ID
    List<Integer> getPermissionIdsByRoleId(int role_id);
    
    // 新增：根据权限ID获取所有角色ID
    List<Integer> getRoleIdsByPermissionId(int permission_id);
    
    // 新增：分页查询角色列表
    List<Role> getRoleListPagination(Map<String, Object> params);
    
    // 新增：获取角色总数（用于分页）
    int getRoleCount(Map<String, Object> params);
}